#!/bin/bash

# 交互式输入
read -p "请输入需要修改的文件名（支持通配符，输入all处理所有文件）: " newname
batch_mode=false

# 批量模式判断
if [[ "$newname" == "all" || "$newname" == " " ]]; then
    batch_mode=true
    newname="*"
    echo "[INFO] 进入批量处理模式"
else
    # 通配符文件检查
    file_list=$(ls $newname 2>/dev/null)
    [[ -z "$file_list" ]] && { 
        echo "错误：未找到匹配文件"; 
        exit 1; 
    }
fi

# 提交信息校验
while true; do
    read -p "请输入提交描述（如'修改Readme文件'）: " commit_msg
    [[ -n "$commit_msg" ]] && break || echo "错误：提交信息不能为空！"
done

# 强化版Git流程
echo "正在添加文件..."
git add . || { echo "[ERROR] 添加文件失败"; exit 1; }

echo "提交更改..."
git commit -m "$commit_msg" || { echo "[ERROR] 提交失败"; exit 1; }

echo "推送至远程仓库..."
git push origin 14_basic_project_br || { echo "[ERROR] 推送失败"; exit 1; }

echo "操作完成！"